home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 22 / Cream of the Crop 22.iso / os2 / ooxdb200.zip / ooxnumeric.xh < prev    next >
Text File  |  1996-11-13  |  25KB  |  891 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: ooxnumeric.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.17
  7.  *     SOM Emitter emitxh: 2.47
  8.  */
  9.  
  10. #ifndef SOM_ooxnumeric_xh
  11. #define SOM_ooxnumeric_xh
  12.  
  13. class ooxnumeric;
  14.  
  15. /*
  16.  * Symbol parentComment is undefined
  17.  */
  18.  
  19. #define ooxnumeric_MajorVersion 0
  20. #define ooxnumeric_MinorVersion 0
  21.  
  22. /* C++ SOM defs */
  23. #include <somcls.xh>
  24. #include <somcm.xh>
  25.  
  26. /* C++ parent defs */
  27. #ifndef SOM_ooxfield_xh
  28. #include <ooxfield.xh>
  29. #endif
  30.  
  31. #ifndef ooxnumeric_API
  32. #define ooxnumeric_API
  33. /*
  34.  * -- The Class API
  35.  */
  36.  
  37. /*
  38.  * Start of bindings for IDL types
  39.  */
  40.  
  41. class SOMClass;
  42. class SOMObject;
  43.  
  44. /*
  45.  * End of bindings for IDL types.
  46.  */
  47.  
  48. /* A procedure to create the ooxnumeric Class */
  49. SOMEXTERN SOMClass * SOMLINK ooxnumericNewClass(
  50.         integer4 majorVersion,
  51.         integer4 minorVersion);
  52.  
  53. /* The API to the ooxnumeric class object, and the methods it introduces. */
  54. SOMEXTERN struct ooxnumericClassDataStructure {
  55.     SOMClass *classObject;
  56.     somMToken define;
  57.     somMToken put_long;
  58.     somMToken put_float;
  59.     somMToken get_long;
  60.     somMToken get_float;
  61. } SOMDLINK ooxnumericClassData;
  62. #define _ooxnumeric ooxnumericClassData.classObject
  63.  
  64. /* The API to parentMtabs for ooxnumeric, and the instance data it introduces. */
  65. SOMEXTERN struct ooxnumericCClassDataStructure {
  66.     somMethodTabs parentMtab;
  67.     somDToken              instanceDataToken;
  68. } SOMDLINK ooxnumericCClassData;
  69.  
  70. /*
  71.  * -- Typedefs for ooxnumeric Method Procedures
  72.  */
  73. SOMEXTERN {
  74. typedef void   SOMLINK somTP_ooxnumeric_define(ooxnumeric *somSelf, 
  75.         somInitCtrl* ctrl, 
  76.         string name, 
  77.         short length, 
  78.         short decimal);
  79. typedef somTP_ooxnumeric_define *somTD_ooxnumeric_define;
  80. typedef void   SOMLINK somTP_ooxnumeric_put_long(ooxnumeric *somSelf, 
  81.         long longv);
  82. typedef somTP_ooxnumeric_put_long *somTD_ooxnumeric_put_long;
  83. typedef void   SOMLINK somTP_ooxnumeric_put_float(ooxnumeric *somSelf, 
  84.         float floatv);
  85. typedef somTP_ooxnumeric_put_float *somTD_ooxnumeric_put_float;
  86. typedef long   SOMLINK somTP_ooxnumeric_get_long(ooxnumeric *somSelf);
  87. typedef somTP_ooxnumeric_get_long *somTD_ooxnumeric_get_long;
  88. typedef float   SOMLINK somTP_ooxnumeric_get_float(ooxnumeric *somSelf);
  89. typedef somTP_ooxnumeric_get_float *somTD_ooxnumeric_get_float;
  90.  
  91. /*
  92.  * -- Typedefs for Reintroduced Wrapper Methods
  93.  */
  94. typedef string   SOMLINK somTP_ooxnumeric_get_name(ooxnumeric *somSelf);
  95. typedef somTP_ooxnumeric_get_name *somTD_ooxnumeric_get_name;
  96. typedef string   SOMLINK somTP_ooxnumeric_get(ooxnumeric *somSelf);
  97. typedef somTP_ooxnumeric_get *somTD_ooxnumeric_get;
  98. typedef long   SOMLINK somTP_ooxnumeric_put(ooxnumeric *somSelf, 
  99.         string datum);
  100. typedef somTP_ooxnumeric_put *somTD_ooxnumeric_put;
  101. typedef char   SOMLINK somTP_ooxnumeric_get_type(ooxnumeric *somSelf);
  102. typedef somTP_ooxnumeric_get_type *somTD_ooxnumeric_get_type;
  103. typedef short   SOMLINK somTP_ooxnumeric_get_length(ooxnumeric *somSelf);
  104. typedef somTP_ooxnumeric_get_length *somTD_ooxnumeric_get_length;
  105. typedef short   SOMLINK somTP_ooxnumeric_get_dec_point(ooxnumeric *somSelf);
  106. typedef somTP_ooxnumeric_get_dec_point *somTD_ooxnumeric_get_dec_point;
  107. typedef void   SOMLINK somTP_ooxnumeric_somDefaultInit(ooxnumeric *somSelf, 
  108.         som3InitCtrl* ctrl);
  109. typedef somTP_ooxnumeric_somDefaultInit *somTD_ooxnumeric_somDefaultInit;
  110. typedef void   SOMLINK somTP_ooxnumeric_somUninit(ooxnumeric *somSelf);
  111. typedef somTP_ooxnumeric_somUninit *somTD_ooxnumeric_somUninit;
  112. typedef void   SOMLINK somTP_ooxnumeric_somDestruct(ooxnumeric *somSelf, 
  113.         octet doFree, 
  114.         som3DestructCtrl* ctrl);
  115. typedef somTP_ooxnumeric_somDestruct *somTD_ooxnumeric_somDestruct;
  116. typedef void   SOMLINK somTP_ooxnumeric_somDefaultCopyInit(ooxnumeric *somSelf, 
  117.         som3InitCtrl* ctrl, 
  118.         SOMObject* fromObj);
  119. typedef somTP_ooxnumeric_somDefaultCopyInit *somTD_ooxnumeric_somDefaultCopyInit;
  120. typedef ooxnumeric*   SOMLINK somTP_ooxnumeric_somDefaultAssign(ooxnumeric *somSelf, 
  121.         som3AssignCtrl* ctrl, 
  122.         SOMObject* fromObj);
  123. typedef somTP_ooxnumeric_somDefaultAssign *somTD_ooxnumeric_somDefaultAssign;
  124. typedef void   SOMLINK somTP_ooxnumeric_somDefaultConstCopyInit(ooxnumeric *somSelf, 
  125.         som3InitCtrl* ctrl, 
  126.         SOMObject* fromObj);
  127. typedef somTP_ooxnumeric_somDefaultConstCopyInit *somTD_ooxnumeric_somDefaultConstCopyInit;
  128. typedef void   SOMLINK somTP_ooxnumeric_somDefaultVCopyInit(ooxnumeric *somSelf, 
  129.         som3InitCtrl* ctrl, 
  130.         SOMObject* fromObj);
  131. typedef somTP_ooxnumeric_somDefaultVCopyInit *somTD_ooxnumeric_somDefaultVCopyInit;
  132. typedef void   SOMLINK somTP_ooxnumeric_somDefaultConstVCopyInit(ooxnumeric *somSelf, 
  133.         som3InitCtrl* ctrl, 
  134.         SOMObject* fromObj);
  135. typedef somTP_ooxnumeric_somDefaultConstVCopyInit *somTD_ooxnumeric_somDefaultConstVCopyInit;
  136. typedef ooxnumeric*   SOMLINK somTP_ooxnumeric_somDefaultConstAssign(ooxnumeric *somSelf, 
  137.         som3AssignCtrl* ctrl, 
  138.         SOMObject* fromObj);
  139. typedef somTP_ooxnumeric_somDefaultConstAssign *somTD_ooxnumeric_somDefaultConstAssign;
  140. typedef ooxnumeric*   SOMLINK somTP_ooxnumeric_somDefaultVAssign(ooxnumeric *somSelf, 
  141.         som3AssignCtrl* ctrl, 
  142.         SOMObject* fromObj);
  143. typedef somTP_ooxnumeric_somDefaultVAssign *somTD_ooxnumeric_somDefaultVAssign;
  144. typedef ooxnumeric*   SOMLINK somTP_ooxnumeric_somDefaultConstVAssign(ooxnumeric *somSelf, 
  145.         som3AssignCtrl* ctrl, 
  146.         SOMObject* fromObj);
  147. typedef somTP_ooxnumeric_somDefaultConstVAssign *somTD_ooxnumeric_somDefaultConstVAssign;
  148. typedef void   SOMLINK somTP_ooxnumeric_somInit(ooxnumeric *somSelf);
  149. typedef somTP_ooxnumeric_somInit *somTD_ooxnumeric_somInit;
  150. typedef void   SOMLINK somTP_ooxnumeric_somFree(ooxnumeric *somSelf);
  151. typedef somTP_ooxnumeric_somFree *somTD_ooxnumeric_somFree;
  152. typedef SOMClass*   SOMLINK somTP_ooxnumeric_somGetClass(ooxnumeric *somSelf);
  153. typedef somTP_ooxnumeric_somGetClass *somTD_ooxnumeric_somGetClass;
  154. typedef string   SOMLINK somTP_ooxnumeric_somGetClassName(ooxnumeric *somSelf);
  155. typedef somTP_ooxnumeric_somGetClassName *somTD_ooxnumeric_somGetClassName;
  156. typedef long   SOMLINK somTP_ooxnumeric_somGetSize(ooxnumeric *somSelf);
  157. typedef somTP_ooxnumeric_somGetSize *somTD_ooxnumeric_somGetSize;
  158. typedef boolean   SOMLINK somTP_ooxnumeric_somIsA(ooxnumeric *somSelf, 
  159.         SOMClass* aClassObj);
  160. typedef somTP_ooxnumeric_somIsA *somTD_ooxnumeric_somIsA;
  161. typedef boolean   SOMLINK somTP_ooxnumeric_somIsInstanceOf(ooxnumeric *somSelf, 
  162.         SOMClass* aClassObj);
  163. typedef somTP_ooxnumeric_somIsInstanceOf *somTD_ooxnumeric_somIsInstanceOf;
  164. typedef boolean   SOMLINK somTP_ooxnumeric_somRespondsTo(ooxnumeric *somSelf, 
  165.         somId mId);
  166. typedef somTP_ooxnumeric_somRespondsTo *somTD_ooxnumeric_somRespondsTo;
  167. typedef boolean   SOMLINK somTP_ooxnumeric_somDispatch(ooxnumeric *somSelf, 
  168.         somToken* retValue, 
  169.         somId methodId, 
  170.         va_list ap);
  171. typedef somTP_ooxnumeric_somDispatch *somTD_ooxnumeric_somDispatch;
  172. typedef boolean   SOMLINK somTP_ooxnumeric_somClassDispatch(ooxnumeric *somSelf, 
  173.         SOMClass* clsObj, 
  174.         somToken* retValue, 
  175.         somId methodId, 
  176.         va_list ap);
  177. typedef somTP_ooxnumeric_somClassDispatch *somTD_ooxnumeric_somClassDispatch;
  178. typedef boolean   SOMLINK somTP_ooxnumeric_somCastObj(ooxnumeric *somSelf, 
  179.         SOMClass* cls);
  180. typedef somTP_ooxnumeric_somCastObj *somTD_ooxnumeric_somCastObj;
  181. typedef boolean   SOMLINK somTP_ooxnumeric_somResetObj(ooxnumeric *somSelf);
  182. typedef somTP_ooxnumeric_somResetObj *somTD_ooxnumeric_somResetObj;
  183. typedef void   SOMLINK somTP_ooxnumeric_somDispatchV(ooxnumeric *somSelf, 
  184.         somId methodId, 
  185.         somId descriptor, 
  186.         va_list ap);
  187. typedef somTP_ooxnumeric_somDispatchV *somTD_ooxnumeric_somDispatchV;
  188. typedef long   SOMLINK somTP_ooxnumeric_somDispatchL(ooxnumeric *somSelf, 
  189.         somId methodId, 
  190.         somId descriptor, 
  191.         va_list ap);
  192. typedef somTP_ooxnumeric_somDispatchL *somTD_ooxnumeric_somDispatchL;
  193. typedef void*   SOMLINK somTP_ooxnumeric_somDispatchA(ooxnumeric *somSelf, 
  194.         somId methodId, 
  195.         somId descriptor, 
  196.         va_list ap);
  197. typedef somTP_ooxnumeric_somDispatchA *somTD_ooxnumeric_somDispatchA;
  198. typedef double   SOMLINK somTP_ooxnumeric_somDispatchD(ooxnumeric *somSelf, 
  199.         somId methodId, 
  200.         somId descriptor, 
  201.         va_list ap);
  202. typedef somTP_ooxnumeric_somDispatchD *somTD_ooxnumeric_somDispatchD;
  203. typedef SOMObject*   SOMLINK somTP_ooxnumeric_somPrintSelf(ooxnumeric *somSelf);
  204. typedef somTP_ooxnumeric_somPrintSelf *somTD_ooxnumeric_somPrintSelf;
  205. typedef void   SOMLINK somTP_ooxnumeric_somDumpSelf(ooxnumeric *somSelf, 
  206.         long level);
  207. typedef somTP_ooxnumeric_somDumpSelf *somTD_ooxnumeric_somDumpSelf;
  208. typedef void   SOMLINK somTP_ooxnumeric_somDumpSelfInt(ooxnumeric *somSelf, 
  209.         long level);
  210. typedef somTP_ooxnumeric_somDumpSelfInt *somTD_ooxnumeric_somDumpSelfInt;
  211. }
  212.  
  213. #endif /* ooxnumeric_API */
  214.  
  215.  
  216. /*
  217.  * -- This emitter treats Method Tokens as Thunks by default.
  218.  * -- Use the sc modifier "nothunks" to change this default
  219.  */
  220. #undef somresolve_
  221. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  222.  
  223. /*
  224.  * -- The C++ Wrapper Class for ooxnumeric
  225.  */
  226. class ooxnumeric : public ooxfield
  227. {
  228. /*
  229.  * Symbol parentComment is undefined
  230.  */
  231. public:
  232.  
  233. // ooxnumeric::new creates the class object if necessary, and then uses somNewNoInit
  234. // to allocate memory and create the object. Initialization is in ctors.
  235. void *operator new(size_t)
  236. {
  237.    if (!_ooxnumeric) ooxnumericNewClass(ooxnumeric_MajorVersion,ooxnumeric_MinorVersion);
  238.    return (void*)
  239.       SOM_Resolve(_ooxnumeric,SOMClass,somNewNoInit)
  240.          ((SOMClass *)((void*)_ooxnumeric));
  241. }
  242.  
  243. // ooxnumeric::delete uses somDestruct.
  244. void operator delete(void * obj)
  245. {
  246.    if (obj && *(void**)obj) {
  247.       SOM_Resolve(obj,SOMObject,somFree)
  248.          ((SOMObject*)obj);
  249.    }
  250. }
  251.  
  252. ooxnumeric& operator=(ooxnumeric& fromObj)
  253. {
  254.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  255.    return *this;
  256. }
  257.  
  258. ooxnumeric()
  259. {
  260.    if (*(void**)this != 
  261.        ((somParentMtabStructPtr)
  262.         (ooxnumericCClassData.parentMtab))->mtab)
  263.       return;
  264.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  265. }
  266.  
  267. ooxnumeric(ooxnumeric* fromObj)
  268. {
  269.    if (*(void**)this != 
  270.        ((somParentMtabStructPtr)
  271.         (ooxnumericCClassData.parentMtab))->mtab)
  272.       return;
  273.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  274. }
  275.  
  276. #ifdef __IBMCPP__
  277. #pragma info(nocnv,nopar)
  278. #endif
  279. ooxnumeric(const ooxnumeric* fromObj)
  280. {
  281.    if (*(void**)this != 
  282.        ((somParentMtabStructPtr)
  283.         (ooxnumericCClassData.parentMtab))->mtab)
  284.       return;
  285.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  286. }
  287. #ifdef __IBMCPP__
  288. #pragma info(restore)
  289. #endif
  290.  
  291. ooxnumeric(string name,short length,short decimal) 
  292. {
  293.    define(0,name,length,decimal);
  294. }
  295.  
  296.  
  297. /* initializer method: define */
  298. void   define(somInitCtrl* ctrl, 
  299.         string name, 
  300.         short length, 
  301.         short decimal)
  302. {
  303.    SOM_ResolveD(this,ooxnumeric,ooxnumeric,define)
  304.     (this,ctrl,name,length,decimal);
  305. }
  306.  
  307.  
  308. /* method: put_long */
  309. void   put_long(long longv)
  310. {
  311.    SOM_ResolveD(this,ooxnumeric,ooxnumeric,put_long)
  312.     (this,longv);
  313. }
  314.  
  315.  
  316. /* method: put_float */
  317. void   put_float(float floatv)
  318. {
  319.    SOM_ResolveD(this,ooxnumeric,ooxnumeric,put_float)
  320.     (this,floatv);
  321. }
  322.  
  323.  
  324. /* method: get_long */
  325. long   get_long()
  326. {
  327.    return SOM_ResolveD(this,ooxnumeric,ooxnumeric,get_long)
  328.     (this);
  329. }
  330.  
  331.  
  332. /* method: get_float */
  333. float   get_float()
  334. {
  335.    return SOM_ResolveD(this,ooxnumeric,ooxnumeric,get_float)
  336.     (this);
  337. }
  338.  
  339.  
  340. /*
  341.  * Reintroduce inherited methods
  342.  */
  343.  
  344. /* method: get_name */
  345. string   get_name()
  346. {
  347.    return SOM_ResolveD(this,ooxnumeric,ooxfield,get_name)
  348.     (this);
  349. }
  350.  
  351.  
  352. /* method: get */
  353. string   get()
  354. {
  355.    return SOM_ResolveD(this,ooxnumeric,ooxfield,get)
  356.     (this);
  357. }
  358.  
  359.  
  360. /* method: put */
  361. long   put(string datum)
  362. {
  363.    return SOM_ResolveD(this,ooxnumeric,ooxfield,put)
  364.     (this,datum);
  365. }
  366.  
  367.  
  368. /* method: get_type */
  369. char   get_type()
  370. {
  371.    return SOM_ResolveD(this,ooxnumeric,ooxfield,get_type)
  372.     (this);
  373. }
  374.  
  375.  
  376. /* method: get_length */
  377. short   get_length()
  378. {
  379.    return SOM_ResolveD(this,ooxnumeric,ooxfield,get_length)
  380.     (this);
  381. }
  382.  
  383.  
  384. /* method: get_dec_point */
  385. short   get_dec_point()
  386. {
  387.    return SOM_ResolveD(this,ooxnumeric,ooxfield,get_dec_point)
  388.     (this);
  389. }
  390.  
  391.  
  392. /* initializer method: somDefaultInit */
  393. void   somDefaultInit(som3InitCtrl* ctrl)
  394. {
  395.    SOM_ResolveD(this,ooxnumeric,SOMObject,somDefaultInit)
  396.     (this,ctrl);
  397. }
  398.  
  399.  
  400. /* method: somUninit */
  401. void   somUninit()
  402. {
  403.    SOM_ResolveD(this,ooxnumeric,SOMObject,somUninit)
  404.     (this);
  405. }
  406.  
  407.  
  408. /* method: somDestruct */
  409. void   somDestruct(octet doFree, 
  410.         som3DestructCtrl* ctrl)
  411. {
  412. /*
  413.  *  The default destructor for a SOM object. A nonzero <doFree>
  414.  *  indicates that the object storage should be freed by the
  415.  *  object's class (via somDeallocate) after uninitialization.
  416.  *  As with somDefaultInit, a null ctrl can be passed.
  417.  */
  418.    SOM_ResolveD(this,ooxnumeric,SOMObject,somDestruct)
  419.     (this,doFree,ctrl);
  420. }
  421.  
  422.  
  423. /* initializer method: somDefaultCopyInit */
  424. void   somDefaultCopyInit(som3InitCtrl* ctrl, 
  425.         SOMObject* fromObj)
  426. {
  427. /*
  428.  *  A default copy constructor. Use this to make copies of objects for
  429.  *  calling methods with "by-value" argument semantics.
  430.  */
  431.    SOM_ResolveD(this,ooxnumeric,SOMObject,somDefaultCopyInit)
  432.     (this,ctrl,fromObj);
  433. }
  434.  
  435.  
  436. /* method: somDefaultAssign */
  437. ooxnumeric*  somDefaultAssign(som3AssignCtrl* ctrl, 
  438.         SOMObject* fromObj)
  439. {
  440. /*
  441.  *  A default assignment operator. Use this to "assign" the state of one
  442.  *  object to another.
  443.  */
  444.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somDefaultAssign)
  445.     (this,ctrl,fromObj);
  446. }
  447.  
  448.  
  449. /* initializer method: somDefaultConstCopyInit */
  450. void   somDefaultConstCopyInit(som3InitCtrl* ctrl, 
  451.         SOMObject* fromObj)
  452. {
  453. /*
  454.  *  A default copy constructor that uses a const fromObj.
  455.  */
  456.    SOM_ResolveD(this,ooxnumeric,SOMObject,somDefaultConstCopyInit)
  457.     (this,ctrl,fromObj);
  458. }
  459.  
  460.  
  461. /* initializer method: somDefaultVCopyInit */
  462. void   somDefaultVCopyInit(som3InitCtrl* ctrl, 
  463.         SOMObject* fromObj)
  464. {
  465. /*
  466.  *  A default copy constructor that uses a volatile fromObj.
  467.  */
  468.    SOM_ResolveD(this,ooxnumeric,SOMObject,somDefaultVCopyInit)
  469.     (this,ctrl,fromObj);
  470. }
  471.  
  472.  
  473. /* initializer method: somDefaultConstVCopyInit */
  474. void   somDefaultConstVCopyInit(som3InitCtrl* ctrl, 
  475.         SOMObject* fromObj)
  476. {
  477. /*
  478.  *  A default copy constructor that uses a const volatile fromObj.
  479.  */
  480.    SOM_ResolveD(this,ooxnumeric,SOMObject,somDefaultConstVCopyInit)
  481.     (this,ctrl,fromObj);
  482. }
  483.  
  484.  
  485. /* method: somDefaultConstAssign */
  486. ooxnumeric*  somDefaultConstAssign(som3AssignCtrl* ctrl, 
  487.         SOMObject* fromObj)
  488. {
  489. /*
  490.  *  A default assignment operator that uses a const fromObj.
  491.  */
  492.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somDefaultConstAssign)
  493.     (this,ctrl,fromObj);
  494. }
  495.  
  496.  
  497. /* method: somDefaultVAssign */
  498. ooxnumeric*  somDefaultVAssign(som3AssignCtrl* ctrl, 
  499.         SOMObject* fromObj)
  500. {
  501. /*
  502.  *  A default assignment operator that uses a volatile fromObj.
  503.  */
  504.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somDefaultVAssign)
  505.     (this,ctrl,fromObj);
  506. }
  507.  
  508.  
  509. /* method: somDefaultConstVAssign */
  510. ooxnumeric*  somDefaultConstVAssign(som3AssignCtrl* ctrl, 
  511.         SOMObject* fromObj)
  512. {
  513. /*
  514.  *  A default assignment operator that uses a const volatile fromObj.
  515.  */
  516.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somDefaultConstVAssign)
  517.     (this,ctrl,fromObj);
  518. }
  519.  
  520.  
  521. /* method: somInit */
  522. void   somInit()
  523. {
  524. /*
  525.  *  Obsolete but still supported. Override somDefaultInit instead of somInit.
  526.  */
  527.    SOM_ResolveD(this,ooxnumeric,SOMObject,somInit)
  528.     (this);
  529. }
  530.  
  531.  
  532. /* method: somFree */
  533. void   somFree()
  534. {
  535. /*
  536.  *  Use as directed by framework implementations.
  537.  */
  538.    SOM_ResolveD(this,ooxnumeric,SOMObject,somFree)
  539.     (this);
  540. }
  541.  
  542.  
  543. /* method: somGetClass */
  544. SOMClass*   somGetClass()
  545. {
  546. /*
  547.  *  Return the receiver's class.
  548.  */
  549.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somGetClass)
  550.     (this);
  551. }
  552.  
  553.  
  554. /* method: somGetClassName */
  555. string   somGetClassName()
  556. {
  557. /*
  558.  *  Return the name of the receiver's class.
  559.  */
  560.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somGetClassName)
  561.     (this);
  562. }
  563.  
  564.  
  565. /* method: somGetSize */
  566. long   somGetSize()
  567. {
  568. /*
  569.  *  Return the size of the receiver.
  570.  */
  571.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somGetSize)
  572.     (this);
  573. }
  574.  
  575.  
  576. /* method: somIsA */
  577. boolean   somIsA(SOMClass* aClassObj)
  578. {
  579. /*
  580.  *  Returns 1 (true) if the receiver responds to methods
  581.  *  introduced by <aClassObj>, and 0 (false) otherwise.
  582.  */
  583.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somIsA)
  584.     (this,aClassObj);
  585. }
  586.  
  587.  
  588. /* method: somIsInstanceOf */
  589. boolean   somIsInstanceOf(SOMClass* aClassObj)
  590. {
  591. /*
  592.  *  Returns 1 (true) if the receiver is an instance of
  593.  *  <aClassObj> and 0 (false) otherwise.
  594.  */
  595.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somIsInstanceOf)
  596.     (this,aClassObj);
  597. }
  598.  
  599.  
  600. /* method: somRespondsTo */
  601. boolean   somRespondsTo(somId mId)
  602. {
  603. /*
  604.  *  Returns 1 (true) if the indicated method can be invoked
  605.  *  on the receiver and 0 (false) otherwise.
  606.  */
  607.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somRespondsTo)
  608.     (this,mId);
  609. }
  610.  
  611.  
  612. /* va_list method: somDispatch */
  613.  
  614. /*
  615.  *  This method provides a generic, class-specific dispatch mechanism.
  616.  *  It accepts as input <retValue> a pointer to the memory area to be
  617.  *  loaded with the result of dispatching the method indicated by
  618.  *  <methodId> using the arguments in <ap>. <ap> contains the object
  619.  *  on which the method is to be invoked as the first argument.
  620.  */
  621. /* the va_list invocation form */
  622. boolean   ooxnumeric_somDispatch(somToken* retValue, 
  623.         somId methodId, 
  624.         va_list ap)
  625. {return SOM_ResolveD(this,ooxnumeric,SOMObject,somDispatch)
  626.     (this,retValue,methodId,ap);
  627. }
  628.  
  629. /* the varargs invocation form */
  630. boolean   somDispatch(somToken* retValue, 
  631.         somId methodId, 
  632.         ...)
  633. {
  634. /*
  635.  *  This method provides a generic, class-specific dispatch mechanism.
  636.  *  It accepts as input <retValue> a pointer to the memory area to be
  637.  *  loaded with the result of dispatching the method indicated by
  638.  *  <methodId> using the arguments in <ap>. <ap> contains the object
  639.  *  on which the method is to be invoked as the first argument.
  640.  */
  641.    va_list ap;
  642.    va_start(ap, methodId);
  643.    boolean __somResult = 
  644.       SOM_ResolveD(this,ooxnumeric,SOMObject,somDispatch)
  645.     (this,retValue,methodId,ap);
  646.    va_end(ap);
  647.    return __somResult;
  648. }
  649.  
  650.  
  651. /* va_list method: somClassDispatch */
  652.  
  653. /*
  654.  *  Like somDispatch, but method resolution for static methods is done
  655.  *  according to the clsObj instance method table.
  656.  */
  657. /* the va_list invocation form */
  658. boolean   ooxnumeric_somClassDispatch(SOMClass* clsObj, 
  659.         somToken* retValue, 
  660.         somId methodId, 
  661.         va_list ap)
  662. {return SOM_ResolveD(this,ooxnumeric,SOMObject,somClassDispatch)
  663.     (this,clsObj,retValue,methodId,ap);
  664. }
  665.  
  666. /* the varargs invocation form */
  667. boolean   somClassDispatch(SOMClass* clsObj, 
  668.         somToken* retValue, 
  669.         somId methodId, 
  670.         ...)
  671. {
  672. /*
  673.  *  Like somDispatch, but method resolution for static methods is done
  674.  *  according to the clsObj instance method table.
  675.  */
  676.    va_list ap;
  677.    va_start(ap, methodId);
  678.    boolean __somResult = 
  679.       SOM_ResolveD(this,ooxnumeric,SOMObject,somClassDispatch)
  680.     (this,clsObj,retValue,methodId,ap);
  681.    va_end(ap);
  682.    return __somResult;
  683. }
  684.  
  685.  
  686. /* method: somCastObj */
  687. boolean   somCastObj(SOMClass* cls)
  688. {
  689. /*
  690.  *  cast the receiving object to cls (which must be an ancestor of the
  691.  *  objects true class. Returns true on success.
  692.  */
  693.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somCastObj)
  694.     (this,cls);
  695. }
  696.  
  697.  
  698. /* method: somResetObj */
  699. boolean   somResetObj()
  700. {
  701. /*
  702.  *  reset an object to its true class. Returns true always.
  703.  */
  704.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somResetObj)
  705.     (this);
  706. }
  707.  
  708.  
  709. /* va_list method: somDispatchV */
  710.  
  711. /*
  712.  *  Obsolete. Use somDispatch instead.
  713.  */
  714. /* the va_list invocation form */
  715. void   ooxnumeric_somDispatchV(somId methodId, 
  716.         somId descriptor, 
  717.         va_list ap)
  718. {   SOM_ResolveD(this,ooxnumeric,SOMObject,somDispatchV)
  719.     (this,methodId,descriptor,ap);
  720. }
  721.  
  722. /* the varargs invocation form */
  723. void   somDispatchV(somId methodId, 
  724.         somId descriptor, 
  725.         ...)
  726. {
  727. /*
  728.  *  Obsolete. Use somDispatch instead.
  729.  */
  730.    va_list ap;
  731.    va_start(ap, descriptor);
  732.    SOM_ResolveD(this,ooxnumeric,SOMObject,somDispatchV)
  733.     (this,methodId,descriptor,ap);
  734.    va_end(ap);
  735. }
  736.  
  737.  
  738. /* va_list method: somDispatchL */
  739.  
  740. /*
  741.  *  Obsolete. Use somDispatch instead.
  742.  */
  743. /* the va_list invocation form */
  744. long   ooxnumeric_somDispatchL(somId methodId, 
  745.         somId descriptor, 
  746.         va_list ap)
  747. {return SOM_ResolveD(this,ooxnumeric,SOMObject,somDispatchL)
  748.     (this,methodId,descriptor,ap);
  749. }
  750.  
  751. /* the varargs invocation form */
  752. long   somDispatchL(somId methodId, 
  753.         somId descriptor, 
  754.         ...)
  755. {
  756. /*
  757.  *  Obsolete. Use somDispatch instead.
  758.  */
  759.    va_list ap;
  760.    va_start(ap, descriptor);
  761.    long __somResult = 
  762.       SOM_ResolveD(this,ooxnumeric,SOMObject,somDispatchL)
  763.     (this,methodId,descriptor,ap);
  764.    va_end(ap);
  765.    return __somResult;
  766. }
  767.  
  768.  
  769. /* va_list method: somDispatchA */
  770.  
  771. /*
  772.  *  Obsolete. Use somDispatch instead.
  773.  */
  774. /* the va_list invocation form */
  775. void*   ooxnumeric_somDispatchA(somId methodId, 
  776.         somId descriptor, 
  777.         va_list ap)
  778. {return SOM_ResolveD(this,ooxnumeric,SOMObject,somDispatchA)
  779.     (this,methodId,descriptor,ap);
  780. }
  781.  
  782. /* the varargs invocation form */
  783. void*   somDispatchA(somId methodId, 
  784.         somId descriptor, 
  785.         ...)
  786. {
  787. /*
  788.  *  Obsolete. Use somDispatch instead.
  789.  */
  790.    va_list ap;
  791.    va_start(ap, descriptor);
  792.    void* __somResult = 
  793.       SOM_ResolveD(this,ooxnumeric,SOMObject,somDispatchA)
  794.     (this,methodId,descriptor,ap);
  795.    va_end(ap);
  796.    return __somResult;
  797. }
  798.  
  799.  
  800. /* va_list method: somDispatchD */
  801.  
  802. /*
  803.  *  Obsolete. Use somDispatch instead.
  804.  */
  805. /* the va_list invocation form */
  806. double   ooxnumeric_somDispatchD(somId methodId, 
  807.         somId descriptor, 
  808.         va_list ap)
  809. {return SOM_ResolveD(this,ooxnumeric,SOMObject,somDispatchD)
  810.     (this,methodId,descriptor,ap);
  811. }
  812.  
  813. /* the varargs invocation form */
  814. double   somDispatchD(somId methodId, 
  815.         somId descriptor, 
  816.         ...)
  817. {
  818. /*
  819.  *  Obsolete. Use somDispatch instead.
  820.  */
  821.    va_list ap;
  822.    va_start(ap, descriptor);
  823.    double __somResult = 
  824.       SOM_ResolveD(this,ooxnumeric,SOMObject,somDispatchD)
  825.     (this,methodId,descriptor,ap);
  826.    va_end(ap);
  827.    return __somResult;
  828. }
  829.  
  830.  
  831. /* method: somPrintSelf */
  832. SOMObject*   somPrintSelf()
  833. {
  834. /*
  835.  *  Uses <SOMOutCharRoutine> to write a brief string with identifying
  836.  *  information about this object.  The default implementation just gives
  837.  *  the object's class name and its address in memory.
  838.  *  <self> is returned.
  839.  */
  840.    return SOM_ResolveD(this,ooxnumeric,SOMObject,somPrintSelf)
  841.     (this);
  842. }
  843.  
  844.  
  845. /* method: somDumpSelf */
  846. void   somDumpSelf(long level)
  847. {
  848. /*
  849.  *  Uses <SOMOutCharRoutine> to write a detailed description of this object
  850.  *  and its current state.
  851.  * 
  852.  *  <level> indicates the nesting level for describing compound objects
  853.  *  it must be greater than or equal to zero.  All lines in the
  854.  *  description will be preceeded by <2*level> spaces.
  855.  * 
  856.  *  This routine only actually writes the data that concerns the object
  857.  *  as a whole, such as class, and uses <somDumpSelfInt> to describe
  858.  *  the object's current state.  This approach allows readable
  859.  *  descriptions of compound objects to be constructed.
  860.  * 
  861.  *  Generally it is not necessary to override this method, if it is
  862.  *  overriden it generally must be completely replaced.
  863.  */
  864.    SOM_ResolveD(this,ooxnumeric,SOMObject,somDumpSelf)
  865.     (this,level);
  866. }
  867.  
  868.  
  869. /* method: somDumpSelfInt */
  870. void   somDumpSelfInt(long level)
  871. {
  872. /*
  873.  *  Uses <SOMOutCharRoutine> to write in the current state of this object.
  874.  *  Generally this method will need to be overridden.  When overriding
  875.  *  it, begin by calling the parent class form of this method and then
  876.  *  write in a description of your class's instance data. This will
  877.  *  result in a description of all the object's instance data going
  878.  *  from its root ancestor class to its specific class.
  879.  */
  880.    SOM_ResolveD(this,ooxnumeric,SOMObject,somDumpSelfInt)
  881.     (this,level);
  882. }
  883.  
  884.  
  885.  
  886. };   /* ooxnumeric */
  887.  
  888.  
  889.  
  890. #endif       /* SOM_ooxnumeric_xh */
  891.